package com.yss.reportworld.domain.rule;

import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * 校验对象与数据集关联对象 rw_db_r_object_source_sql_relation
 *
 * @author yss
 * @date 2023-07-26
 */
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("rw_db_r_object_source_sql_relation")
public class RObjectSourceSqlRelation extends Model<RObjectSourceSqlRelation> {

    public static final String SHEET_NAME = "多表关联-触发绑定";

    /**
     * ID
     */
    @ExcelIgnore
    @TableId("ID")
    private String id;

    /**
     * 校验对象表ID
     */
    @ExcelIgnore
    @TableField("CHECK_OBJECT_ID")
    private String checkObjectId;

    @ExcelProperty({"多表关联-触发绑定", "关联校验对象识别码"})
    @ColumnWidth(20)
    private String checkCode;

    /**
     * 数据集表ID
     */
    @ExcelProperty({"多表关联-触发绑定", "子校验对象识别码"})
    @ColumnWidth(20)
    @TableField("RELATION_CHECK_CODE")
    private String relationCheckCode;
    /**
     * 数据集表ID
     */
    @ExcelIgnore
    @TableField("SOURCE_SQL_ID")
    private String sourceSqlId;

    /**
     * 数据集表ID
     */
    @ExcelIgnore
    @TableField("RELATION_CHECK_OBJECT_ID")
    private String relationCheckObjectId;

    /**
     * 数据编码
     */
    @ExcelIgnore
    @TableField("RW_DB_ID")
    private String rwDbId;
}
